Missing plymouth executable

Hey there! I’m trying to modify my config. When running nixos-rebuild switch the config seems to build correctly but I then get thrown into emergency mode where I check journalctl and it tells me it can’t run plymouth because it won’t find it.
Here is configuration.nix:

# Edit this configuration file to define what should be installed on
# your system.  Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running ‘nixos-help’).
{
  config,
  pkgs,
  flake-inputs,
  agenix,
  ...
}: {
  imports = [
    # Include the results of the hardware scan.
    ./hardware-configuration.nix
  ];

  # Bootloader.
  boot.loader.systemd-boot.enable = true;
  boot.loader.efi.canTouchEfiVariables = true;

  boot.initrd.kernelModules = [ "amdgpu" ];
  boot.plymouth = {
	enable = true;
	theme = "rings";
  };
 boot.initrd.verbose = true;
 boot.kernelParams = [
	"plymouth.use-simpledrm"
	"quiet"
	"splash"
	"boot.shell_on_fail"
	"loglevel=3"
 ];

  boot.supportedFilesystems = ["ntfs"];
  services.udisks2.enable = true;
  networking.hostName = "bm69"; # Define your hostname.

  # Enable networking
  networking.networkmanager.enable = true;
  nix.settings.experimental-features = ["nix-command" "flakes"];

  # Set your time zone.
  time.timeZone = "America/Argentina/Salta";
  # Select internationalisation properties.
  i18n.defaultLocale = "en_US.UTF-8";

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

  # security.polkit.enable = true;

  services.xserver.enable = true;
  services.xserver.displayManager.sddm.enable = true;
  services.xserver.videoDrivers = [ "amdgpu" ];
  hardware.graphics = {
	enable = true;
	driSupport = true;
  };


  # services.gnome3.gnome-keyring.enable = true;
  services.gnome.gnome-keyring.enable = true;
  services.lorri.enable = true;
  programs.seahorse.enable = true;
  security.pam.services.sddm.enableGnomeKeyring = true;

  programs.steam = {
    enable = true;
    gamescopeSession.enable = false;
  };

  # environment.pathsToLink = [ "/libexec" ];

  # Enable CUPS to print documents.
  services.printing.enable = true;

  # Enable sound with pipewire.
  # sound.enable = true;
  services.pulseaudio.enable = true;
  security.rtkit.enable = true;
  # services.pulseaudio.enable = true;
  services.pipewire = {
    enable = false;
    alsa.enable = true;
    alsa.support32Bit = true;
    pulse.enable = true;
    # If you want to use JACK applications, uncomment this
    jack.enable = true;

    # use the example session manager (no others are packaged yet so this is enabled by default,
    # no need to redefine it in your config for now)
    #media-session.enable = true;
  };

  # Enable touchpad support (enabled default in most desktopManager).

  programs.zsh.enable = true;
  users.defaultUserShell = pkgs.zsh;
  
  # Define a user account. Don't forget to set a password with ‘passwd’.
  users.users.bm69 = {
    isNormalUser = true;
    description = "bm69";
    extraGroups = ["networkmanager" "wheel" "video"];
    # shell = pkgs.zsh;
  };

  home-manager = {
    # also pass inputs to home-manager modules
    # extraSpecialArgs = {inherit inputs;};
    users = {
      "bm69" = import ../../home/home.nix;
    };
  };
  # programs.light.enable = true;
  # Enable automatic login for the user.
  services.xserver.displayManager.autoLogin.enable = true;
  services.xserver.displayManager.autoLogin.user = "bm69";

  # Allow unfree packages
  nixpkgs.config.allowUnfree = true;
  # List packages installed in system profile. To search, run:
  # $ nix search wget
  environment.systemPackages = with pkgs; [
    flake-inputs.agenix.packages."${system}".default
    #  vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
    #  wget
  ];

  # Some programs need SUID wrappers, can be configured further or are
  # started in user sessions.
   programs.mtr.enable = true;
   programs.gnupg.agent = {
     enable = true;
     enableSSHSupport = true;
   };

  # List services that you want to enable:

  # Enable the OpenSSH daemon.
  services.openssh.enable = true;

  system.stateVersion = "23.11"; # Did you read the comment?
}

Any help or comment is appreciated!

The plymouth thing is a red herring; it always says that, even when a functioning system has to go into emergency mode.

So we don’t have enough information here. I don’t see anything obvious in your configuration that would be an issue, so I think we would need to see the logs. journalctl -b 0 will show all the logs for the current boot.

Hey, thanks for the reply! Indeed the problem was a complete red herring. I was actually using an alias to update the config. The alias mapped to the flake output of my laptop which runs on intel and nvidia hardware, thus the strange error. It is now fixed!!