After upgrading to nixos-unstable, I get "error: file .../bzImage` not found" on boot

I have just executed nix-channel --add https://nixos.org/channels/nixos-unstable nixos and nixos-rebuild switch --upgrade. After that, I’ve rebooted and got this error message instead:

error: file `/nix/store/.../bzImage` not found.
error: you need to load the kernel first.

The curious part is this error is also happening for all previous generations, so I’m stuck outside my system now…

Below is my configuration.nix file. I’ve pinned a kernel/nvidia package version, as the current nvidia driver has a flickering bug with NVIDIA Turing cards. What could be happening here?

{ config, pkgs, ... }:

let
  working-nvidia = "bf76f3342c50f7554fe33d99d94745166c17fa53";
  nixos-pinned = import (builtins.fetchTarball {
    url = "https://github.com/nixos/nixpkgs/archive/${working-nvidia}.tar.gz";
    sha256 = "sha256:12krh5ry09fwmx4c8r8iidpxy1aryv1mkl82m0184ii8385hqaqc";
  }) {};
in {
  imports = [ ./hardware-configuration.nix ];

  nixpkgs.config.allowUnfree = true;

  boot.kernelPackages = nixos-pinned.linuxPackages_latest;
  nixpkgs.config.packageOverrides = pkgs: {
    linuxPackages_latest = nixos-pinned.linuxPackages_latest;
    nvidia_x11 = nixos-pinned.nvidia_x11;
  };

  boot.loader.grub.enable = true;
  boot.loader.grub.device = "/dev/sdb";
  boot.loader.grub.useOSProber = true;

  networking.hostName = "polita-nix";
  networking.networkmanager.enable = true;
  services.resolved.enable = true;

  time.timeZone = "America/Sao_Paulo";

  i18n.defaultLocale = "en_US.UTF-8";
  i18n.extraLocaleSettings = {
    LC_ADDRESS = "pt_BR.UTF-8";
    LC_IDENTIFICATION = "pt_BR.UTF-8";
    LC_MEASUREMENT = "pt_BR.UTF-8";
    LC_MONETARY = "pt_BR.UTF-8";
    LC_NAME = "pt_BR.UTF-8";
    LC_NUMERIC = "pt_BR.UTF-8";
    LC_PAPER = "pt_BR.UTF-8";
    LC_TELEPHONE = "pt_BR.UTF-8";
    LC_TIME = "pt_BR.UTF-8";
  };

  services.xserver = {
    enable = true;
    layout = "us";
    xkbVariant = "";
    videoDrivers = ["nvidia"];
    displayManager.gdm.enable = true;
    desktopManager.gnome.enable = true;
  };
  services.gnome.core-utilities.enable = false;

  users.users.ian = {
    isNormalUser = true;
    description = "Ian Liu Rodrigues";
    extraGroups = [ "networkmanager" "wheel" ];
    packages = [
      pkgs.eza
      pkgs.ripgrep
      pkgs.vim
      pkgs.steam
      pkgs.firefox
      pkgs.wezterm
      pkgs.openscad
    ];
  };

  environment.systemPackages = [
    pkgs.vim
    pkgs.gnomeExtensions.appindicator
  ];
  services.udev.{ config, pkgs, ... }:

let
  working-nvidia = "bf76f3342c50f7554fe33d99d94745166c17fa53";
  nixos-pinned = import (builtins.fetchTarball {
    url = "https://github.com/nixos/nixpkgs/archive/${working-nvidia}.tar.gz";
    sha256 = "sha256:12krh5ry09fwmx4c8r8iidpxy1aryv1mkl82m0184ii8385hqaqc";
  }) {};
in {
  imports = [ ./hardware-configuration.nix ];

  nixpkgs.config.allowUnfree = true;

  boot.kernelPackages = nixos-pinned.linuxPackages_latest;
  nixpkgs.config.packageOverrides = pkgs: {
    linuxPackages_latest = nixos-pinned.linuxPackages_latest;
    nvidia_x11 = nixos-pinned.nvidia_x11;
  };

  boot.loader.grub.enable = true;
  boot.loader.grub.device = "/dev/sdb";
  boot.loader.grub.useOSProber = true;

  networking.hostName = "polita-nix";
  networking.networkmanager.enable = true;
  services.resolved.enable = true;

  time.timeZone = "America/Sao_Paulo";

  i18n.defaultLocale = "en_US.UTF-8";
  i18n.extraLocaleSettings = {
    LC_ADDRESS = "pt_BR.UTF-8";
    LC_IDENTIFICATION = "pt_BR.UTF-8";
    LC_MEASUREMENT = "pt_BR.UTF-8";
    LC_MONETARY = "pt_BR.UTF-8";
    LC_NAME = "pt_BR.UTF-8";
    LC_NUMERIC = "pt_BR.UTF-8";
    LC_PAPER = "pt_BR.UTF-8";
    LC_TELEPHONE = "pt_BR.UTF-8";
    LC_TIME = "pt_BR.UTF-8";
  };

  services.xserver = {
    enable = true;
    layout = "us";
    xkbVariant = "";
    videoDrivers = ["nvidia"];
    displayManager.gdm.enable = true;
    desktopManager.gnome.enable = true;
  };
  services.gnome.core-utilities.enable = false;

  users.users.ian = {
    isNormalUser = true;
    description = "Ian Liu Rodrigues";
    extraGroups = [ "networkmanager" "wheel" ];
    packages = [
      pkgs.eza
      pkgs.ripgrep
      pkgs.vim
      pkgs.steam
      pkgs.firefox
      pkgs.wezterm
      pkgs.openscad
    ];
  };

  environment.systemPackages = [
    pkgs.vim
    pkgs.gnomeExtensions.appindicator
  ];
  services.udev.packages = [
    pkgs.gnome.gnome-settings-daemon
  ];

  hardware.opengl = {
    enable = true;
    driSupport = true;
    driSupport32Bit = true;
  };
  hardware.nvidia = {
    #modesetting.enable = true;
    open = true;
    package = config.boot.kernelPackages.nvidiaPackages.production;
  };

  services.openssh.enable = true;
  networking.firewall.enable = false;

  system.stateVersion = "23.05";
}packages = [
    pkgs.gnome.gnome-settings-daemon
  ];

  hardware.opengl = {
    enable = true;
    driSupport = true;
    driSupport32Bit = true;
  };
  hardware.nvidia = {
    #modesetting.enable = true;
    open = true;
    package = config.boot.kernelPackages.nvidiaPackages.production;
  };

  services.openssh.enable = true;
  networking.firewall.enable = false;

  system.stateVersion = "23.05";
}